#ifndef __CCW_I2C_H__
#define __CCW_I2C_H__
#include "sys.h"

//IO方向设置
// 配置SDA浮空输入
#define SDA_IN()  {GPIOB->CRH&=0X0FFFFFFF;GPIOB->CRH|=4 << 4;} 
#define SDA_OUT() {GPIOB->CRH&=0X0FFFFFFF;GPIOB->CRH|=1 << 4;} // 7 开漏输出, 3 推挽输出

#define STOP_IIC() { \
    GPIOB->CRH&=0X0FFFFFFF;GPIOB->CRH|=4 << 4; \
    GPIOB->CRH&=0X0FFFFFFF;GPIOB->CRH|=4 << 0; \
}

//IO操作函数	 
#define IIC_SCL    PBout(8) //SCL
#define IIC_SDA    PBout(9) //SDA	 
#define READ_SDA   PBin(9)  //输入SDA 

#define HDMI_5V    PAout(6) // Hdmi 5v
#define HDMI_HPD   PBin(7)

void ccw_i2c_init(void);
void ccw_i2c_deinit(void);

//IIC所有操作函数
u8 IIC_Write_One_Byte(u8 daddr,u8 addr,u8 data);
u8 IIC_Write_Bytes(u8 daddr,u8 addr, u8 num, u8 *data_buff);
u8 IIC_Read_One_Byte(u8 daddr,u8 addr);	  
u8 IIC_Read_Bytes(u8 daddr, u8 addr, u8 num, u8 *data_buff);
#endif
















